package main

import (
	"fmt"
	"os"
)

//  学员信息管理管理
/*
1. 添加学生
2. 编辑学生
3. 删除学生
4. 查询所有学生
*/

// 提示选项
func showMenu() {
	fmt.Println(">>> 欢迎使用学生管理系统 <<<")
	fmt.Println("1. 添加学员")
	fmt.Println("2. 编辑学员")
	fmt.Println("3. 展示所有学员")
	fmt.Println("4. 删除一个学员")
	fmt.Println("5. 退出")
}

func GetUserInput() *student {
	var (
		id    int
		name  string
		class string
	)
	fmt.Println("请输入学生信息")
	fmt.Println("请输入学号")
	fmt.Scanf("%d\n", &id)
	fmt.Println("请输入姓名")
	fmt.Scanf("%s\n", &name)
	fmt.Println("请输入班级")
	fmt.Scanf("%s\n", &class)

	// 添加一个学生
	stu := OperateStudent(id, name, class)
	return stu
}

func main() {
	vm := OperateStudentManager()
	for {
		// 提示选项
		showMenu()
		// 接收选项
		var input int
		// 获取用户输入
		fmt.Scanf("%d\n", &input)
		fmt.Println("用户输入的选项是: ", input)
		// 根据选项进行操作,使用switch case
		switch input {
		case 1:
			stu := GetUserInput()
			vm.AddStudent(stu)
		case 2:
			stu := GetUserInput()
			vm.EditStudent(stu)
		case 3:
			vm.ShowStudent()
		case 4:
			stu := GetUserInput()
			vm.DeleteStudent(stu)
		case 5:
			fmt.Println("退出")
			os.Exit(0)
		}
	}
}
